/**
 * 页面加载
 */

var centerTabs;

$(function(){
	
	//初始化TAB面板
	CENTERTAB_INIT(GETID('centerTabs'));
	
	//窗口初始化
	$('#dDengLu').window({
		title:'用户登陆',
		modal:true,
		closed:false,
		closable:false,
		minimizable:false,
		maximizable:false,
		collapsible:false,
		resizable:false,
		iconCls:'icon-login-t',
		width:543,
		height:321
	});	
	
	$("#dDengLu").window("open");

	//绑定功能	
	$.post('userAjax!loadUserMainMenu', {},	
	     	function(data){
				var text = JSON.stringify(data);
				var menus = data.result.split(",");
    			for (i=0;i<menus.length ;i++ )  
    		    {
    				$('#dFunctionTree' + menus[i]).tree( {
    					url:'menuAjax!loadTreeDataByMenuId?menuId='+menus[i],
    					loadMsg:'数据加载中......',
    					border:false,
    					lines:true,
    					onClick: function(node){
    						
    						$.post('menuAjax!get', {id:node.id},		    		
	    				        	function(data){
	    								if(data.menuVo.leaf){
	    									link(data.menuVo.id, data.menuVo.name, data.menuVo.target);
	    								}
	    				        	}
	    				        	, 'json');
    					}
    				});
    		    } 
        	}
        	, 'json');
	
	tabsMenu = $('#tabsMenu').menu({
		onClick : function(item) {
			var curTabTitle = $(this).data('tabTitle');
			var type = $(item.target).attr('id');
			//关闭标签
			if (type === 'tmCloseTab') {
				var t = centerTabs.tabs('getTab', curTabTitle);
				if (t.panel('options').closable) {
					centerTabs.tabs('close', curTabTitle);
				}
				return;
			}

			var allTabs = centerTabs.tabs('tabs');
			var closeTabsTitle = [];

			$.each(allTabs, function() {
				var opt = $(this).panel('options');
				//关闭其他标签
				if (opt.closable && opt.title != curTabTitle && type === 'tmCloseOtherTab') {
					closeTabsTitle.push(opt.title);
				//关闭全部标签
				} else if (opt.closable && type === 'tmCloseAllTab') {
					closeTabsTitle.push(opt.title);
				}
			});

			for ( var i = 0; i < closeTabsTitle.length; i++) {
				centerTabs.tabs('close', closeTabsTitle[i]);
			}
		}
	});
	
	centerTabs = $('#centerTabs').tabs({
		fit : true,
		border : false,
		onContextMenu : function(e, title) {
			e.preventDefault();
			tabsMenu.menu('show', {
				left : e.pageX,
				top : e.pageY
			}).data('tabTitle', title);
		}
	});
	
	
	//MESSAGEBOX('首页');
	/*centerTabs.tabs('add',{
		title:'首页',
		//href:'main!show'
		content : '<iframe src="main!show" frameborder="0" style="border:0;width:100%; height:100%;"></iframe>',
	});*/
	
	//初始化首页
	MAIN_INIT();
	
	BUSSINESS_WINDOW = GETID('BUSINESS_WINDOW_DIV');
	WINDOW_BUSINESS_INIT(BUSSINESS_WINDOW, 500, 400);
});

/**
 * 功能链接
 * @param name 功能名称
 * @param url action链接
 * @return
 */
function link(mid, name, url){
	if(url != ''){
		var tab = centerTabs.tabs('getTab', name);
		//使用  & 连接 Wid
		var funUrl = url + "&wid="+mid;
		if(funUrl.indexOf('?') == -1){
			//如果URL不包括 ? 则使用 ? 连接 Wid
			funUrl = url + "?wid="+mid;
		}

		if(tab == null){
			centerTabs.tabs('add',{
				title:name,
				href:funUrl,
				closable:true,
				//cache:false
			});
		}else{
			centerTabs.tabs('select',name);		
		}
		//tabClose();
	}
}

function tabClose()
{
	/*双击关闭TAB选项卡*/
	$(".tabs-inner").dblclick(function(){
		var tabTitle = $(this).children(".tabs-closable").text();
		$('#centerTabs').tabs('close', tabTitle);
	})
	/*为选项卡绑定右键*/
	$(".tabs-inner").bind('contextmenu',function(e){
		$('#tabsMenu').menu('show', {
			left: e.pageX,
			top: e.pageY
		});

		var tabTitle = $(this).children(".tabs-closable").text();

		$('#tabsMenu').data("currtab", tabTitle);
		$('#centerTabs').tabs('select', tabTitle);
		return false;
	});
}

//绑定右键菜单事件
function tabCloseEven()
{
	//关闭当前标签
	$('#tmCloseTab').click(function(){
		var currTabTitle = $('#tabsMenu').data("currtab");
		$('#centerTabs').tabs('close', currTabTitle);
	});
	
	//关闭其他标签
	$('#tmCloseOtherTab').click(function(){
		var currTabTitle = $('#tabsMenu').data("currtab");
		$('.tabs-inner span').each(function(i, n){
			var t = $(n).text();
			if(currTabTitle != t){
				$('#centerTabs').tabs('close', t);
			}
		});
	});
	
	//全部关闭标签
	$('#tmCloseAllTab').click(function(){
		$('.tabs-inner span').each(function(i, n){
			var t = $(n).text();
			$('#centerTabs').tabs('close', t);
		});
	});
}

/**
 * 关闭标签
 * @return
 */
function curTabClose(){
	var currtab = $('#centerTabs').tabs('getSelected');
	var currTabTitle = currtab.panel('options').tab.text();
	$('#centerTabs').tabs('close', currTabTitle);
}

/**
 * 获取当前TAB页ID
 * @returns
 */
function getCurTabID(){
	var currtab = $('#centerTabs').tabs('getSelected');
	var href = currtab.panel('options').href;
	var tabID = href.substring(href.indexOf('wid=') + 4, href.length);
	return tabID;
}


/**
 * 用户登录按钮事件
 * @return
 */
function userLogin()
{   
	var userName = $('#userName').val();
	var userPwd = $('#userPwd').val();
	//登录验证
	if(userName=='' || userPwd==''){
		$.messager.alert('提示','用户名或密码不能为空!');
		return;
	}else{
	    //ajax后台登录
		$.post('userAjax!login', {name:userName, password:userPwd},		    		
	        	function(data){
	    			switch(data.result){
	    				case 'userNull':
	    					$.messager.alert('提示','用户不存在!');
	    					break;
	    				case 'passwordError':
	    					$.messager.alert('提示','密码不正确!');
	    					break;
	    				case 'statusError':
	    					$.messager.alert('提示','该用户已经离职, 登录失败!');
	    					break;
	    				case 'lockedError':
	    					$.messager.alert('提示','该用户已经被停止使用, 登录失败!');
	    					break;
	    				case 'rolesError':
	    					$.messager.alert('提示','用户数据读取失败, 登录失败!');
	    					break;
	    				case 'loginSuccess':
	    					location.reload(); 	    					
	    					break;
	    			}
	        	}
	        	, 'json');
	}
}

